package com.wx.fresh.custom.controller;

import com.wx.fresh.common.util.CommonResult;
import com.wx.fresh.custom.vo.*;
import com.wx.fresh.custom.vo.productVo.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @author Dshzs月
 * @version 1.0.0
 * @ClassName ChatController.java
 * @Description TODO
 * @createTime 2022年04月19日 15:38:00
 */

@Api(tags = "C端首页接口")
@RestController
@RequestMapping("home")
public class CustomerHomeController {


    @ApiOperation(value = "C端首页分类", response = OutCategoryVo.class)
    @GetMapping("findCategoryAll")
    public CommonResult<OutCategoryVo> findCategoryAll() {
        return null;
    }


    @ApiOperation(value = "C端首页猜你喜欢", response = OutRelatedVo.class)
    @ApiImplicitParams({
            @ApiImplicitParam(name = "userId", value = "用户ID", required = true, paramType = "form"),
            @ApiImplicitParam(name = "latitude", value = "维度坐标", required = true, paramType = "form"),
            @ApiImplicitParam(name = "longitude", value = "经度坐标", required = true, paramType = "form")
    })
    @GetMapping("getGuessYouLike")
    public CommonResult<OutRelatedVo> getGuessYouLike(InRelatedVo inRelatedVo) {
        return null;
    }


    @ApiOperation(value = "C端首页当季优选", response = OutOptimizationVo.class)
    @ApiImplicitParams({
            @ApiImplicitParam(name = "userId", value = "用户ID", required = true, paramType = "form"),
            @ApiImplicitParam(name = "date", value = "日期", required = true, paramType = "form"),
            @ApiImplicitParam(name = "latitude", value = "维度坐标", required = true, paramType = "form"),
            @ApiImplicitParam(name = "longitude", value = "经度坐标", required = true, paramType = "form")
    })
    @GetMapping("getOptimization")
    public CommonResult<OutOptimizationVo> getOptimization(InOptimizationVo inOptimizationVo) {
        return null;
    }


    @ApiOperation(value = "C端首页大家在买", response = OutBestSellerVo.class)
    @ApiImplicitParams({
            @ApiImplicitParam(name = "latitude", value = "维度坐标", required = true, paramType = "form"),
            @ApiImplicitParam(name = "longitude", value = "经度坐标", required = true, paramType = "form")
    })
    @GetMapping("getEveryoneIsBuying")
    public CommonResult<OutBestSellerVo> getEveryoneIsBuying(InBestSellerVo inBestSellerVo) {
        return null;
    }


    @ApiOperation(value = "C端首页搜索框热词", response = OutHotWordVo.class)
    @ApiImplicitParams({
            @ApiImplicitParam(name = "userId", value = "用户ID", required = true, paramType = "form")
    })
    @GetMapping("getSearchHotWord")
    public CommonResult<OutHotWordVo> getSearchHotWord(InHotWordVo inHotWordVo) {
        return null;
    }


    @ApiOperation(value = "C端首页搜索", response = OutSearchVo.class)
    @ApiImplicitParams({
            @ApiImplicitParam(name = "keyword", value = "搜索关键字", required = true, paramType = "form")
    })
    @GetMapping("getByKeywordAll")
    public CommonResult<OutSearchVo> getByKeywordAll(InSearchVo inSearchVo) {
        return null;
    }


    @ApiOperation(value = "C端首页商品详情", response = OutProductVo.class)
    @ApiImplicitParams({
            @ApiImplicitParam(name = "productId", value = "商品ID", required = true, paramType = "form")
    })
    @GetMapping("getProductById")
    public CommonResult<OutProductVo> getProductById(Long productId) {
        return null;
    }


    @ApiOperation(value = "C端首页商品展示", response = ProductVo.class)
    @ApiImplicitParams({
            @ApiImplicitParam(name = "categoryId", value = "分类ID", required = true, paramType = "form")
    })
    @GetMapping("getProductByClassify")
    public CommonResult<ProductVo> getProductByClassify(Long categoryId) {
        return null;
    }

}
